

#import <Foundation/Foundation.h>

@interface NSString (XBKit)

#pragma +++++++++++++++++++++++类方法++++++++++++++++++++

+ (void)nslogPropertyWithDic:(NSDictionary *)dic;
/**
 *  是否是空字符串
 *
 *  @param string 字符串
 *
 *  @return YES是空字符串  NO不是空字符串
 */
+ (BOOL)isBlankString:(NSString *)string;

/**
 *  判断字符串是否是银行卡
 *
 *  @return YES 正确/ NO 不正确
 */
+ (BOOL)isCheckCardNo:(NSString*)cardNo;

#pragma ================================处理小数========================
/**
 *    @brief    截取指定小数位的值
 *
 *    @param     price     目标数据
 *    @param     position     有效小数位
 *
 *    @return    截取后数据
 */
+ (NSString *)notRounding:(NSString *)price afterPoint:(NSInteger)position;
/**
 *    @brief    截取指定小数后两位的值
 *
 *    @param     price     目标数据
 *
 *    @return    截取后数据
 */
+ (NSString *)notRounding2:(NSString *)price;




/**
 普通数字限制 输入 框

 @param string      正在输入的字符
 @param toBeSting   输入框内的所有字符
 @param maxBiggest 最大能输入 =0  无限制
 @return BOOL
 
 例子
 NSString * toBeString = [textField.text stringByReplacingCharactersInRange:range withString:string];
 
 BOOL canChange=[NSString LimitUITextFieldUITextField:string Tobestring:toBeString maxBiggest:0];
 
 */
+ (BOOL)LimitUITextFieldUITextField:(NSString *)string
                         Tobestring:(NSString *)toBeSting
                         maxBiggest:(NSInteger)maxBiggest;

/*
string-----正在输入的字符
cString----正确的输入字符集
toBeSting--输入框内的所有字符
dpB--------小数点前几位
dpA--------小数点后几位
     
 
 NSString * toBeString = [textField.text stringByReplacingCharactersInRange:range withString:string];
 
 BOOL canChange=[nsstring LimitUITextFieldUITextField:string Characterset:@".0123456789\n" Tobestring:toBeString Decimalpoint_Before:8 Decimalpoint_After:2];
 
 */

+ (BOOL)LimitUITextFieldUITextField:(NSString *)string Characterset:(NSString *)cString
                         Tobestring:(NSString *)toBeSting Decimalpoint_Before:(NSInteger)dPB
                 Decimalpoint_After:(NSInteger)dPA;


/*
 textView       -----UItextView
 range          ----正确的输入字符集
 text           --正在输入的字符
 isEmoji        --------是否禁用emoji表情
 maxLimitNums   --------最大字数
 
 [NSString LimitUITextView:textView shouldChangeTextInRange:range replacementText:text isEmoji:YES maxLimitNums:MAX_LIMIT_NUMS];
 
 */
+ (BOOL)LimitUITextView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text isEmoji:(BOOL)isEmoji  maxLimitNums:(NSInteger)maxLimitNums;


#pragma  +++++++++++++++++++++++实列方法++++++++++++++++++++
/**
 *  计算字体 大小的长宽
 *
 *  @param font 字体大小
 *
 *  @return CGSize
 */
- (CGSize)sizeWithFont:(UIFont *)font;
/**
 *  计算字体 大小的长宽
 *
 *  @param font 字体大小
 *  @param maxW 最大宽度
 *
 *  @return CGSize
 */
- (CGSize)sizeWithFont:(UIFont *)font andMaxW:(CGFloat)maxW;


#pragma =========================验证=========================
/**
 *      是不是中文
 */
-(BOOL)isChinese;
/**
 *  判断是否是手机号  能同时验证 +86 86 或无 86开头的手机号
 *
 *  @return YES 正确/ NO 不正确
 */
- (BOOL)isPhone;
/**
 *  是否是邮箱
 *
 *  @return YES 正确 / NO 不正确
 */
- (BOOL)isEmail;

/**
 *  检查密码否和规定吗  正则匹配用户密码6-20位数字和字母组合
 *
 *  @return YES
 */
- (BOOL)isCheckPassword;


/**
 身份证验证

 @return  YES 正确 / NO 不正确
 */
- (BOOL)isIDCardNumber;

//判断是否输入了emoji 表情
- (BOOL)stringContainsEmoji;

@end
